모두를 위한 머신러닝과 딥러닝의 강의
알파고와 이세돌의 경기를 보면서 이제 머신 러닝이 인간이 잘 한다고 여겨진 직관과 의사 결정능력에서도 충분한 데이타가 있으면 어느정도 또는 우리보다 더 잘할수도 있다는 생각을 많이 하게 되었습니다. Andrew Ng 교수님이 말씀하신것 처럼 이런 시대에 머신 러닝을 잘 이해하고 잘 다룰수 있다면 그야말로 "Super Power"를 가지게 되는 것이 아닌가 생각합니다.
더 많은 분들이 머신 러닝과 딥러닝에 대해 더 이해하고 본인들의 문제를 이 멋진 도구를 이용해서 풀수 있게 하기위해 비디오 강의를 준비하였습니다. 더 나아가 이론에만 그치지 않고 최근 구글이 공개한 머신러닝을 위한 오픈소스인 TensorFlow를 이용해서 이론을 구현해 볼수 있도록 하였습니다.
수학이나 컴퓨터 공학적인 지식이 없이도 쉽게 볼수 있도록 만들려고 노력하였습니다.
시즌 RL - Deep Reinforcement Learning
비디오 리스트 (천천이 업데이트 예정입니다. 시즌 1 먼저 들으신 다음 들으시면 좋습니다.)- Lecture 1: 수업의 개요 비디오 강의 슬라이드
- Lecture 2: OpenAI GYM 게임해보기 비디오 강의 슬라이드
- Lecture 3: Dummy Q-learning (table) 비디오 강의 슬라이드
- Lecture 4: Q-learning exploit&exploration and discounted reward 비디오 강의 슬라이드
- Lecture 5: Q-learning in non-deterministic world 비디오 강의 슬라이드
- Lecture 6: Q-Network 비디오 강의 슬라이드
- Lecture 7: DQN 비디오 강의 슬라이드
시즌 NLP - Deep NLP
(TBA)시즌 1 - 딥러닝의 기본 (TF 1.X lab 완료!) 비디오 리스트
- 수업에 사용하는 코드 https://github.com/hunkim/DeepLearningZeroToAll
- 수업의 개요 비디오 슬라이드
- 머신러닝의 개념과 용어 비디오 (TensorFlow의 기본 Lab 비디오 ) 강의 슬라이드 Lab 슬라이드
- Linear Regression 의 개념 비디오 (TensorFlow 로 구현 Lab 비디오 ) 강의 슬라이드 Lab 슬라이드
- Linear Regression cost함수 최소화 비디오 (TensorFlow 로 구현 Lab 비디오 ) 강의 슬라이드 Lab 슬라이드
- 여러개의 입력(feature)의 Linear Regression 비디오 (TensorFlow 로 구현 Lab1 비디오 ) (파일 데이타 로딩 Lab2 비디오 ) 강의 슬라이드 Lab 슬라이드
- Logistic (Regression) Classification 강의 슬라이드 실습 슬라이드
- Softmax Regression (Multinomial Logistic Regression) 슬라이드 실습 슬라이드
- ML의 실용과 몇가지 팁 강의 슬라이드 실습 슬라이드
- 학습 rate, Overfitting, 그리고 일반화 (Regularization) 비디오
- Training/Testing 데이타 셋 비디오
- Lab 1: TensorFlow에서의 구현 (학습 rate, training/test 셋으로 성능평가) 실습 비디오 1
- Lab 2: Meet MNIST dataset 실습 비디오 2
- 딥러닝의 기본 개념과, 문제, 그리고 해결 강의 슬라이드 실습 슬라이드
- 딥러닝의 기본 개념: 시작과 XOR 문제 비디오
- 딥러닝의 기본 개념2: Back-propagation 과 2006/2007 '딥'의 출현 비디오
- Lab : Tensor Manipulation 실습 비디오
- Neural Network 1: XOR 문제와 학습방법, Backpropagation (1986 breakthrough) 강의 슬라이드 실습 슬라이드
- XOR 문제 딥러닝으로 풀기 비디오
- 특별편: 10분안에 미분 정리하기 비디오
- 딥넷트웍 학습 시키기 (backpropagation) 비디오
- 실습1: XOR을 위한 텐스플로우 딥넷트웍 비디오
- 실습2: Tensor Board로 딥네트웍 들여다보기 비디오
- Neural Network 2: ReLU and 초기값 정하기 (2006/2007 breakthrough) 강의 슬라이드 실습 슬라이드
- XSigmoid 보다 ReLU가 더 좋아 비디오
- Weight 초기화 잘해보자 비디오
- Dropout 과 앙상블 비디오
- 레고처럼 넷트웍 모듈을 마음껏 쌓아 보자 비디오
- 실습: 딥러닝으로 MNIST 98%이상 해보기 비디오
- Convolutional Neural Networks 강의 슬라이드 실습 슬라이드
- ConvNet의 Conv 레이어 만들기 비디오
- ConvNet Max pooling 과 Full Network 비디오
- ConvNet의 활용예 비디오
- 실습1: TensorFlow CNN 의 기본 비디오
- 실습2: TensorFlow로 구현하자 (MNIST 99%) 비디오
- 실습3: Class, tf.layers, Ensemble (MNIST 99.5%) 비디오
- Recurrent Neural Network 강의 슬라이드 실습 슬라이드
Acknowledgement
이 비디오는 저도 인터넷등을 통해 공부하면서 만든것이며 아래 자료를 많이 사용하였습니다.
- Andrew Ng’s and other ML tutorials
- https://class.coursera.org/ml-003/lecture
- http://www.holehouse.org/mlclass/ (note)
- Deep Learning Tutorial
- Andrej Karpathy's Youtube channel
- 동국대 홍정모 교수님의 C++로 배우는 딥러닝
- Lecture Videos
- CS231n: Convolutional Neural Networks for Visual Recognition
- CS224d: Deep Learning for Natural Language Processing
- Tensorflow
의견주기
비디오나 강의에 대한 의견이 있으시면 아래로 이메일을 보내 주시면 됩니다. 홍콩과기대 김성훈 hunkim+ml@gmail.com